package com.agileboot.domain.performance.score.command;

import java.math.BigDecimal;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.PositiveOrZero;
import lombok.Data;

/**
 * 新增用户分数记录命令对象
 */
@Data
public class AddUserScoreRecordCommand {

    @NotNull(message = "用户ID不能为空")
    private Long userId;

    @PositiveOrZero(message = "科研工作量不能为负")
    private BigDecimal researchWorkload;

    @PositiveOrZero(message = "教研工作量不能为负")
    private BigDecimal teachingWorkload;

    @PositiveOrZero(message = "育人工作量不能为负")
    private BigDecimal educationWorkload;

    @PositiveOrZero(message = "服务工作量不能为负")
    private BigDecimal serviceWorkload;

    @PositiveOrZero(message = "其他工作量不能为负")
    private BigDecimal otherWorkload;

    @PositiveOrZero(message = "通用课程分数不能为负")
    private BigDecimal generalCourseScore;

    @PositiveOrZero(message = "专业课程分数不能为负")
    private BigDecimal majorCourseScore;

    @PositiveOrZero(message = "实验课程分数不能为负")
    private BigDecimal labCourseScore;

    @PositiveOrZero(message = "待审核分数不能为负")
    private BigDecimal pendingScore;

    @PositiveOrZero(message = "已审核总分不能为负")
    private BigDecimal approvedTotalScore;

}

